/********************************
功  能：定时/计数器查询方式实现LED灯闪烁
编程人：ZZT
版  本：V1.0
时  间：2023/12/22
**********************************/
//头文件声明
#include <Reg51.h>

//IO的声明
sbit LED = P2^0;

//函数的声明
void timer0_Init();//定时器0初始化

/**********************************
函数名：main
功  能：完成程序模块的调用
参  数：无
返回值：无
***********************************/
void main()
{
	timer0_Init();
	while(1)
	{
		if (1 == TF0)
		{
			TF0 = 0;
			TH0 = (65536 - 46080) / 256;//重新赋值
			TL0 = (65536 - 46080) % 256;
			LED = ~LED;
		}
	}
}

/**********************************
函数名：timer0_Init
功  能：定时器0初始化
参  数：无
返回值：无
***********************************/
void timer0_Init()
{
	//1、设置TMOD 确定工作方式 定时 工作方式1 GATE 0
	TMOD = 0x01;
	//2、定值初值的计算 50ms 11.0592MHZ
	TH0 = (65536 - 46080) / 256;
	TL0 = (65536 - 46080) % 256;
	//3、打开定时/计数器
	TR0 = 1;//启动定时计数器
}